export default {
	namespaced:true,
	state:{
		token:uni.getStorageSync('token'),
		userInfo:uni.getStorageSync('userInfo')
	},
	mutations:{
		// 设置token方法
		setToken(state,data){
			state.token = data
			uni.setStorageSync('token',data)
		},
		// 设置用户资料方法
		setUserInfo(state,data){
			state.userInfo = data
			uni.setStorageSync('userInfo',data)
		}
	},
	actions:{
		// 微信登录操作
		wxLoginAction(context){
			// 1. 通过wx.login获取到登录凭证code
			// 2. 将code发生请求提交给后端，得到token
			uni.login({
				success:async (res) => {
					console.log(res);
					// 发生登录请求
					let result = await uni.$http.post('/auth/loginByWeixin',{ code:res.code })
					// 存储token
					context.commit('setToken',result.token)
					// 提示一下
					uni.showToast({
						title:'登录成功'
					})
					// 获取用户资料
					context.dispatch('getUserInfo')
					
				},
				fail: (err) => {
					console.log(err);
				}
			})
		},
		// 获取用户资料
		async getUserInfo(context){
			let res = await uni.$http.get('/user/profile')
			context.commit('setUserInfo',res)
		}
	}	
}